Deep learning is a technology used to cluster or classify objects or data. For example, computers cannot distinguish dogs and cats from photographs alone. But a human can easily distinguish those two. To this end, a method called “machine learning” was devised. It is a technique to allow a computer to classify similar things among lots of data inputted into the computer. When a photo of an animal similar to a dog is inputted, the computer will classify it as a dog photo.
There have already been many machine learning algorithms to classify data. For example, a decision tree, a Bayesian network, a support vector machine (SVM), an artificial neural network, etc. have been developed. The deep learning is a descendant of the artificial neural network.
Deep Convolution Neural Networks (Deep CNNs) are at the heart of the remarkable development in deep learning. CNNs have already been used in the 90's to solve the problems of character recognition, but their use has become as widespread as it is now thanks to recent research. These deep CNNs won the 2012 ImageNet image classification tournament, crushing other competitors. Then, the convolution neural network became a very useful tool in the field of the machine learning.
FIG. 1 is a drawing schematically illustrating a conventional process of a general segmentation by using a conventional CNN.
By referring to FIG. 1, according to the conventional lane detection method, a learning device receives an input image, generates feature maps by multiple convolution operations and non-linear operations like ReLU in multiple convolutional layers, and generates a segmentation result by performing multiple deconvolution operations in multiple deconvolutional layers and SoftMax operations on a last of the feature maps.
On the other hand, a conventional method of a lane segmentation has to segment every pixel in the input image, and check every pixel to determine whether the pixel corresponds to a lane or not. Such the conventional method requires a tremendous amount of computation caused by checking every pixel, which is clearly a problem.
Meanwhile, when performing the lane segmentation for autonomous vehicles, there is no need for segmentation of all objects within the input image, but detecting only obstacles to the autonomous vehicles should suffice.
Thus a new method for detecting only the obstacles within the input image is required.
Also, a new method is required for finding objectnesses corresponding to nearest obstacles, not just for finding the obstacles as lines in the input image with less computation.